<?php

class WebUser extends CWebUser {
    private $_model; //Guardem el model per a no repetir la comanda SQL
    private $_nomClub;
    
    //Cridar amb Yii::app()->user->nomUsuari
    public function getNomUsuari(){
        $usuari = $this->loadUser(Yii::app()->user->id);
        return $usuari->nomUsuari;
    }
  
    //Cridar amb Yii::app()->user->club
    public function getNomClub(){
        $usuari = $this->loadUser(Yii::app()->user->id);
        return $this->_nomClub;
    }
    
    //Cridar amb Yii::app()->user->nomReal
    public function getNomReal(){
        $usuari = $this->loadUser(Yii::app()->user->id);
        return $usuari->nomReal;
    }
  
    //Cridar amb Yii::app()->user->idClub
    public function getidClub(){
        $usuari = $this->loadUser(Yii::app()->user->id);
        return $usuari->idClub;
    }
 
    //Cridar amb Yii::app()->user->rol
    public function getRol(){
        $usuari = $this->loadUser(Yii::app()->user->id);
        return $usuari->rol;
    }
    
    //Cridar amb Yii::app()->user->esClub()
    public function esClub(){
        $usuari = $this->loadUser(Yii::app()->user->id);
        return ($usuari->rol == 'club');
    }

    //Cridar amb Yii::app()->user->teClub()
    public function teClub(){
        $usuari = $this->loadUser(Yii::app()->user->id);
        return ($usuari->idClub!=NULL && $usuari->idClub>0);
    }
 
    // Carregar usuari si no ho està
    protected function loadUser($id=null){
        if($this->_model===null) {
            if($id!==null)
                $this->_model= Usuari::model()->findByPk($id);
                if ($this->_model->idClub)
                    $this->_nomClub= Club::model()->findByPk($this->_model->idClub)->nom;
                else
                    $this->_nomClub= '';
        }
        return $this->_model;
    }
    
    public function logout(){
        unset($this->_model);
        parent::logout();
    }
}

?>
